.TH std::swap(std::valarray) 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::swap(std::valarray) \- std::swap(std::valarray)

.SH Synopsis
   Defined in header <valarray>
   template< class T >                                                  \fI(since C++11)\fP
   void swap( std::valarray<T>& lhs, std::valarray<T>& rhs ) noexcept;

   Specializes the std::swap algorithm for std::valarray. Swaps the contents of lhs and
   rhs. Calls lhs.swap(rhs).

.SH Parameters

   lhs, rhs - valarrays whose contents to swap

.SH Return value

   \fI(none)\fP

.SH Complexity

   Constant.

.SH Example


// Run this code

 #include <iostream>
 #include <valarray>

 void print(auto rem, const std::valarray<int>& v)
 {
     std::cout << rem << '{';
     for (char sep[]{0, ' ', 0}; auto elem : v)
         std::cout << sep << elem, *sep = ',';
     std::cout << "}\\n";
 }

 int main()
 {
     std::valarray x{3, 1, 4, 1, 5};
     std::valarray y{2, 7, 1, 8};

     print("Before swap:\\n" "x: ", x);
     print("y: ", y);

     std::swap(x, y);

     print("After swap:\\n" "x: ", x);
     print("y: ", y);
 }

.SH Output:

 Before swap:
 x: {3, 1, 4, 1, 5}
 y: {2, 7, 1, 8}
 After swap:
 x: {2, 7, 1, 8}
 y: {3, 1, 4, 1, 5}

.SH See also

   swap swaps with another valarray
        \fI(public member function)\fP
